import authorization.*
import templateDesigner.*

class BootStrap {

    def layoutService
    
    def init = { servletContext ->
        Usuario usuario = new Usuario(nombre: "lea", password: "123")
        usuario.save()
        
        //======================================================================
        
        Template temp1 = new Template(identif: "ACCIONES-Adm_sust", nombre: "ACCIONES-Adm_sust", path: "ehe/emergencia")
        Template temp2 = new Template(identif: "DIAGNOSTICO-Diagnosticos", nombre: "DIAGNOSTICO-Diagnosticos", path: "ehe/emergencia")
        Template temp3 = new Template(identif: "ADMISION-contexto_del_evento", nombre: "ADMISION-contexto_del_evento", path: "ehe/trauma")
        Template temp4 = new Template(identif: "EVALUACION_PRIMARIA-rts", nombre: "EVALUACION_PRIMARIA-rts", path: "ehe/trauma/evaluacion/evaluacion_primaria")
        Template temp5 = new Template(identif: "iss", nombre: "iss", path: "ehe/trauma/evaluacion/evaluacion_secundaria")
        Template temp6 = new Template(identif: "diagnostico", nombre: "diagnostico", path: "ehe/trauma/evaluacion")

        temp1.save()
        temp2.save()
        temp3.save()
        temp4.save()
        temp5.save()
        temp6.save()

        Usuario usu1 = new Usuario(nombre: "leacar21", password: "123")
        Usuario usu2 = new Usuario(nombre: "jbgomez", password: "456")
        Usuario usu3 = new Usuario(nombre: "pepe", password: "789")

        VersionTemplate vers11 = new VersionTemplate(numero: "1", descripcion: "Versión inicial", template: temp1)
        VersionTemplate vers12 = new VersionTemplate(numero: "2", descripcion: "Segunda Versión", template: temp1)
        VersionTemplate vers13 = new VersionTemplate(numero: "3", descripcion: "Tercera Versión", template: temp1)
        VersionTemplate vers21 = new VersionTemplate(numero: "1", descripcion: "Versión inicial", template: temp2)
        VersionTemplate vers31 = new VersionTemplate(numero: "1", descripcion: "Versión inicial", template: temp3)

        Edicion edic11 = new Edicion(xmlTemplate: "<template>...</template>", notas: "Ninguna", versionTemplate: vers11, finalizada: true)
        Edicion edic12 = new Edicion(xmlTemplate: "<template>...</template>", notas: "Ninguna", versionTemplate: vers12, finalizada: true)
        Edicion edic13 = new Edicion(xmlTemplate: "<template>...</template>", notas: "Ninguna", versionTemplate: vers13, finalizada: false)
        Edicion edic21 = new Edicion(xmlTemplate: "<template>...</template>", notas: "Ninguna", versionTemplate: vers21, finalizada: false)
        Edicion edic31 = new Edicion(xmlTemplate: "<template>...</template>", notas: "Ninguna", versionTemplate: vers31, finalizada: false)

        vers11.edicion = edic11
        vers12.edicion = edic12
        vers13.edicion = edic13
        vers21.edicion = edic21
        vers31.edicion = edic31

        usu1.addToEdiciones(edic11)
        usu2.addToEdiciones(edic12)
        usu1.addToEdiciones(edic13)
        usu2.addToEdiciones(edic21)
        usu3.addToEdiciones(edic31)

        if (!usu1.save()){ println "ERROR" + usu1.errors } else{ println "OK" }
        if (!usu2.save()){ println "ERROR" + usu2.errors } else{ println "OK" }
        if (!usu3.save()){ println "ERROR" + usu3.errors } else{ println "OK" }
        
        println "Cargando Layouts - INICIO"
        layoutService.cargarLayouts()
        println "Cargando Layouts - FIN"
    }
    
    def destroy = {
    }
}
